package com.zmzncs.lmtc.module.customer.service;

import com.zmzncs.lmtc.common.util.RestUtil;
import com.zmzncs.lmtc.module.customer.pojo.card.*;
import com.baomidou.mybatisplus.extension.service.IService;

import java.math.BigDecimal;
import java.util.Map;


/**
 * <p>
 * 客户-会员卡 服务类
 * </p>
 *
 * @author 任建波
 * @since 2020-09-02
 */
public interface CardService extends IService<Card> {

    /**充值*/
    Map<String, Object> recharge(RechargeForm form);
    /** 会员购买之后，判断订单是否支付状态成功 */
    boolean validatePayState(String orderCode);
    /**是否有会员卡*/
    HasCardDTO hasCard(CardHasForm cardHasForm);
    /**购买普通月卡
     * @return*/
    Map<String, Object> buyMonthCard(MonthCardBuyForm form);
    /**微信支付回调-购买普通月卡*/
    String buyMonthCardCallback(String callbackStr);
    /**购买定制卡
     * @return*/
    Map<String, Object> buyCustomizeCard(CustomizeCardBuyForm customizeCardBuyForm);
    /**微信支付回调-购买定制月卡*/
    String buyCustomizeCardCallback(String callbackStr);
    /**购买时长卡
     * @return*/
    Map<String, Object> buyDurationCard(DurationCardBuyForm durationCardBuyForm);
    /**微信支付回调-购买时长卡*/
    String buyDurationCardCallback(String callbackStr);
    /**重新设置会员和车牌到泊链*/
    void resetUserAndCarToBoLian(Long custocmerId);
    /**微信支付回调-充值*/
    String rechargeCallback(String callbackStr);
    /**查询用户充值信息*/
    RechargeInfoVO getUserRechargeInfo();
}
